#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <math.h>
#include <iostream>
#include <fstream>
#include <vector>
#include <sstream>
#include <sys/socket.h>
#include <sys/wait.h>
#include <string.h>
#include <signal.h>

#define enrango(a,x,b) ((a) <= (x) && (x) < (b))
#define forn(i,n) for(i=0; i < (int)(n); ++i)

#define __mac_xstr(s) #s
#define __mac_str(s) __mac_xstr(s)
#define DBG(X ...)

/*** Player ***/

using namespace std;

string convertDouble(double value) {
  std::ostringstream o;
  if (!(o << value))
    return "";
  return o.str();
}

string dameChocloParametros(const vector< string > &params, const vector< float > &valores){
	int i;
	string res = "";
	forn(i,params.size()){
		float valor = valores[i];
		res += (params[i] + "=" +convertDouble(valor)+" ");
	}
	return res;
}

int main(int argc, char* argv[]) {
	int partidos;
	int victorias=0, derrotas=0, empates=0;
	int puntJug0=0, puntJug1=0;
	ifstream archRes;
	if (argc > 1){
		partidos = atoi(argv[1]);
	}else{
		partidos = 10;
	}
	string parametros;
	
	for(int cp = 0;cp < partidos; cp++){
		parametros = "./judge 11 ./nuestros_jugadores/mike_exacto_Poda_ancho -p_cip=6.3 -p_cie=9.4 -p_tip=5.4 -p_tie=6.5 -p_fep=5.2 -p_fee=0 -p_pro=18 -p_anc=2 -- ./jugadores/heurb > result.txt";
		system(parametros.c_str());
		archRes.open("result.txt", ifstream::in);
		archRes >> puntJug0 >> puntJug1;
		cout << "\tPartido -- " << "jug0: "<< puntJug0<< "|\t jug1: "<< puntJug1 << endl;
		if(puntJug1 < puntJug0) victorias++; 
		if(puntJug1 > puntJug0) derrotas++; 
		if(puntJug1 == puntJug0) empates++; 
		archRes.close();
		sleep(2);
	}
	cout << "victorias: " << victorias << endl;
	cout << "derrotas: " << derrotas << endl;
	cout << "empates: " << empates << endl;
	return 0;
}
